Rename the app to Keynectr
- Crate/binary: nostr-manager-backend -> keynectr - Data directory: nost-feed-manager -> keynectr, migrated automatically on first data_dir() call (existing vaults, settings and backups move) - Electron extraResources/spawn path, executableName, productName, window title and CLI usage strings updated to match - Deliberately unchanged: crypto.rs KDF verifier string, so previously encrypted vault backups remain decryptable Verified live: existing vault with two profiles migrated to ~/.local/share/keynectr and loads correctly.
This commit is contained in:
parent
1116dfdbb4
commit
7c6a085bf1
13 changed files with 108 additions and 264 deletions
|
|
@ -76,10 +76,10 @@ let nextId = 1;
|
|||
|
||||
function resolveBackendPath(): string {
|
||||
if (app.isPackaged) {
|
||||
return path.join(process.resourcesPath, 'nostr-manager-backend');
|
||||
return path.join(process.resourcesPath, 'keynectr');
|
||||
}
|
||||
// Development: the crate builds to <project>/target/release.
|
||||
return path.join(app.getAppPath(), '..', 'target', 'release', 'nostr-manager-backend');
|
||||
return path.join(app.getAppPath(), '..', 'target', 'release', 'keynectr');
|
||||
}
|
||||
|
||||
function startBackend(): void {
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Nostr Feed Manager</title>
|
||||
<title>Keynectr</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
|
|
|
|||
4
frontend/package-lock.json
generated
4
frontend/package-lock.json
generated
|
|
@ -1,11 +1,11 @@
|
|||
{
|
||||
"name": "nost-feed-manager",
|
||||
"name": "keynectr",
|
||||
"version": "0.1.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "nost-feed-manager",
|
||||
"name": "keynectr",
|
||||
"version": "0.1.0",
|
||||
"dependencies": {
|
||||
"react": "^18.3.1",
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
{
|
||||
"name": "nost-feed-manager",
|
||||
"name": "keynectr",
|
||||
"productName": "Keynectr",
|
||||
"productName": "Nostr Feed Manager",
|
||||
"version": "0.1.0",
|
||||
"description": "A friendly Linux desktop app for managing Nostr profiles and publishing text notes.",
|
||||
|
|
@ -58,8 +59,8 @@
|
|||
],
|
||||
"extraResources": [
|
||||
{
|
||||
"from": "../target/release/nostr-manager-backend",
|
||||
"to": "nostr-manager-backend"
|
||||
"from": "../target/release/keynectr",
|
||||
"to": "keynectr"
|
||||
}
|
||||
],
|
||||
"linux": {
|
||||
|
|
@ -67,7 +68,7 @@
|
|||
"dir"
|
||||
],
|
||||
"category": "Network",
|
||||
"executableName": "nost-feed-manager"
|
||||
"executableName": "keynectr"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ describe('SettingsScreen', () => {
|
|||
renderWithApp(<SettingsScreen />);
|
||||
|
||||
expect(
|
||||
await screen.findByText('/home/user/.local/share/nost-feed-manager/profiles_vault.json'),
|
||||
await screen.findByText('/home/user/.local/share/keynectr/profiles_vault.json'),
|
||||
).toBeInTheDocument();
|
||||
expect(screen.getByText('Storage is not encrypted')).toBeInTheDocument();
|
||||
});
|
||||
|
|
|
|||
|
|
@ -35,8 +35,8 @@ export function makeState(overrides?: Partial<AppState>): AppState {
|
|||
};
|
||||
return {
|
||||
version: '0.1.0',
|
||||
vault_path: '/home/user/.local/share/nost-feed-manager/profiles_vault.json',
|
||||
settings_path: '/home/user/.local/share/nost-feed-manager/settings.json',
|
||||
vault_path: '/home/user/.local/share/keynectr/profiles_vault.json',
|
||||
settings_path: '/home/user/.local/share/keynectr/settings.json',
|
||||
encrypted_storage: false,
|
||||
vault_locked: false,
|
||||
migrated_from: null,
|
||||
|
|
@ -188,7 +188,7 @@ export function createApiMock(initial: AppState = makeState()): ApiMock {
|
|||
},
|
||||
),
|
||||
backupNow: vi.fn(async () => ({
|
||||
backup_path: '/home/user/.local/share/nost-feed-manager/profiles_vault.json.backup-1',
|
||||
backup_path: '/home/user/.local/share/keynectr/profiles_vault.json.backup-1',
|
||||
})),
|
||||
setVaultPassword: vi.fn(async () => ({
|
||||
...state,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue